# _*_ coding:utf-8 _*_
# @author : Joyamon
# @time : 2022-12-12 10:03
# @file : xjson.py

import time
from flask import jsonify


class StatusCode(object):
    """
    200：成功
    401：没有授权
    400：参数错误
    405:方法错误
    500：服务器错误
    """
    ok = 200
    parameters = 400
    unauth = 401
    methoderror = 405
    servererror = 500


class Time(object):
    date = time.strftime('%Y-%m-%d %H:%M:%S')


def json_result(code, message, data):
    return jsonify({
        'code': code,
        'message': message,
        'data': data or {},
        'date': Time.date
    })


def json_success(message='', data=None):
    """
    请求成功
    """
    return json_result(code=StatusCode.ok, message=message, data=data)


def json_error(message='', data=None):
    """
    请求参数错误
    """
    return json_result(code=StatusCode.parameters, message=message, data=data)


def json_unauth_error(message='', data=None):
    """
    没有权限访问
    """
    return json_result(code=StatusCode.unauth, message=message, data=data)


def json_method_error(message='', data=None):
    """
    请求方法错误
    """
    return json_result(code=StatusCode.methoderror, message=message, data=data)


def json_server_error(message='', data=None):
    """
    服务器内部错误
    """
    return json_result(code=StatusCode.servererror, message=message, data=data)
